﻿using Newtonsoft.Json;
using Sportsbook.Domain.Models.Lines;

namespace Sportsbook.InMemoryPersistence.Models.Lines
{
    public class Line : ILine
    {
        [JsonProperty(PropertyName = "event_id")]
        public string EventId { get; set; }

        [JsonProperty(PropertyName = "sport_id")]
        public string SportId { get; set; }

        [JsonProperty(PropertyName = "market_id")]
        public string MarketId { get; set; }

        [JsonProperty(PropertyName = "league_id")]
        public string LeagueId { get; set; }

        [JsonProperty(PropertyName = "period")]
        public Period Period { get; set; }

        [JsonProperty(PropertyName = "home_team")]
        public string HomeTeam { get; set; }

        [JsonProperty(PropertyName = "away_team")]
        public string AwayTeam { get; set; }

        [JsonProperty(PropertyName = "home_score")]
        public int HomeScore { get; set; }

        [JsonProperty(PropertyName = "away_score")]
        public int AwayScore { get; set; }

        [JsonProperty(PropertyName = "number_of_red_cards_home_team")]
        public int HomeRedCards { get; set; }

        [JsonProperty(PropertyName = "number_of_red_cards_away_team")]
        public int AwayRedCards { get; set; }

        [JsonProperty(PropertyName = "moneyline")]
        public IMoneyline Moneyline { get; set; }

        [JsonProperty(PropertyName = "spread")]
        public ISpread Spread { get; set; }

        [JsonProperty(PropertyName = "total")]
        public ITotal Total { get; set; }
    }
}

